|
자바네트워크I/O |
[1] |
|
등록일:2008-03-12 09:34:23 (0%) 작성자: 제목:Endian differences and data storage |
|
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
public class Endians {
public static void main(String[] args) {
ByteBuffer bb = ByteBuffer.wrap(new byte[12]);
bb.asCharBuffer().put("abcdef");
System.out.println(toString(bb.array()));
bb.rewind();
bb.order(ByteOrder.BIG_ENDIAN);
bb.asCharBuffer().put("abcdef");
System.out.println(toString(bb.array()));
bb.rewind();
bb.order(ByteOrder.LITTLE_ENDIAN);
bb.asCharBuffer().put("abcdef");
System.out.println(toString(bb.array()));
}
static String toString(byte[] a) {
StringBuffer result = new StringBuffer("[");
for (int i = 0; i < a.length; i++) {
result.append(a[i]);
if (i < a.length - 1)
result.append(", ");
}
result.append("]");
return result.toString();
}
} ///:~
------------------------------------------------------------------------------------------------
setByteOrder
void setByteOrder(ByteOrder byteOrder)
이 스트림로부터의 향후의 데이터치의 읽을 위해(때문에), 바이트순서를 설정합니다. 예를 들어,'0x01 0x02 0x03 0x04' 의 바이트 순서는, 네트워크 바이트순서를 사용하면(자) ‘0x01020304' 의 값이 되어, 역바이트순서에서는 ‘0x04030201' 의 값이 됩니다.
열거 클래스 java.nio.ByteOrder 를 사용해 바이트순서를 지정합니다. 값 ByteOrder.BIG_ENDIAN 에서는, 고위의 바이트가 선두가 되는, 이른바 빅 endian (네트워크 바이트순서)가 지정됩니다. Motorola 와 Sparc 프로세서는 데이터를 이 형식에서 포함합니다. 한편 Intel 프로세서는, 데이터를 역순서의 ByteOrder.LITTLE_ENDIAN 로 포함합니다.
바이트순서는,readBits 메소드로부터 돌려주어지는 결과 (ImageOutputStream.writeBits 에 의해 기입해지는 값)에는 영향을 주지 않습니다.
파라미터:
byteOrder - ByteOrder.BIG_ENDIAN 또는 java.nio.ByteOrder.LITTLE_ENDIAN 의 어느쪽이든 (향후의 read로 네트워크 바이트순서 또는 그 역순서의 어느 쪽을 사용하는지를 나타낸다)
관련 항목:
ByteOrder , getByteOrder() , readBits(int)
getByteOrder
ByteOrder getByteOrder()
이 스트림로부터 읽히는 데이터의 바이트순서를,java.nio.ByteOrder 열거의 인스턴스로서 돌려줍니다.
반환값:
ByteOrder.BIG_ENDIAN 또는 ByteOrder.LITTLE_ENDIAN 의 어느쪽이든 (사용되는 바이트순서를 나타낸다)
관련 항목:
ByteOrder , setByteOrder(java.nio.ByteOrder)
|
[본문링크] Endian differences and data storage
|
[1]
|
|
|
|
|
코멘트(이글의 트랙백 주소:/cafe/tb_receive.php?no=2512 |
|
|
|
|
|
|
|
|
|
Copyright byCopyright ⓒ2005, SSISO Community All Rights Reserved.
|
|
|